# import pandas as pd
# import numpy as np
# # 创建初始DataFrame
# dict_data = {
#     '姓名': ['赵文', '李蒙', '刘武', '何花'],
#     '职务': ['主管', '副主管', '员工', '员工'],
#     '基本工资': [8000, 7000, 5000, 5500],
#     '联系方式': ['15202369852', '15023695820', '13621358962', '13102659860']
# }
# index = ['1', '2', '3', '4']
# df = pd.DataFrame(dict_data, index)  # 存储员工信息
# # 添加新行（保持索引为字符串类型）
# df.loc['5'] = ['李华', '员工', 5200, '136xxxx235']  # 基本工资改为整数
# # 插入性别列
# df.insert(1, '性别', ['女', '男', '男', '女', '女'])
# # 修改职务（使用列名，且不包裹列表）
# df.loc['3', '职务'] = '副主管'
# print(df)








import pandas as pd
# dict = {'姓名': ['赵文', '李蒙', '刘武', '何花'],
#         '职务': ['主管', '副主管', '员工', '员工'],
#         '基本工资': [8000, 7000, 5000, 5500],
#         '联系方式': ['15202369852', '15023695820', '13621358962', '13102659860']}
# index = ['1', '2', '3', '4']
# df = pd.DataFrame(dict, index)    ##1.存储员工信息
# ##2.增加信息 --李华
# df.loc['5'] = ['李华', '员工', 5200, '13695621235']
#
# ##3.增加性别列
# df.insert(1, '性别', ['女', '男', '男', '女', '女'])
#
# ##4.修改 刘武的职位为副主管
# df.iat[2,2] = '副主管'
# ##df.iloc[2,2] = '副主'   功能同上
#
# print('所有员工信息：\n', df)    ##所有员工信息
#
# ##5.主管或副主管的信息
# print('主管或副主管的信息：\n', df.loc[(df['职务'] == '主管') | (df['职务'] == '副主管')])
#
# ## >=6000工资的人
# print('员工工资大于5000的信息：\n', df.loc[(df['基本工资'] >= 6000)])
#
# ##df.to_csv('employee.csv', encoding='GBK')









# '实践3：'
# import numpy as np
# arr = np.zeros((8, 8), dtype='int')	#创建元素都为0的8×8的数组
# for i in range(8):
#     if i % 2 == 0:
#         arr[i][1:8:2] = 1				#将偶数行的黑格赋1
#     else:
#         arr[i][0:8:2] = 1				#将奇数行的黑格赋1
# for i in range(8):						#循环输出数组
#     for j in range(8):
#         print(arr[i][j], end='\t')
#     print()


# import pandas as pd
# df = pd.DataFrame({'商品': ['苹果','香蕉','梨'],
#                    '单价(元)':[5,5,4],
#                    '销量(kg)':[100,None,None],
#                    '库存(kg)':[50,None,None]})
# print('原始数据: \n',df)
# print('检查缺失值: \n',df.isnull())
# print('检查非缺失值: \n',df.notnull())
# print('统计每列缺失值: \n',df.isnull().sum())




#
# import pandas as pd
# df = pd.DataFrame({'商品': ['苹果','香蕉','梨'],
#                    '单价(元)':[5,5,4],
#                    '销量(kg)':[100,None,None],
#                    '库存(kg)':[50,None,70]})
# print('原始数据: \n',df)
# print('删除包含缺失值的行: \n',df.dropna())
# print('删除包含缺失值的列: \n',df.dropna(axis=1))
# print('删除少于3个非缺失值的行: \n',df.dropna(thresh=3))
# print('删除库存包含缺失值的行: \n',df.dropna(subset=['库存(kg)']))










import pandas as pd
df = pd.DataFrame({'商品': ['苹果','香蕉','梨'],
                   '单价(元)':[5,5,4],
                   '销量(kg)':[100,None,None],
                   '库存(kg)':[50,None,70]})
print('原始数据: \n',df)
print('使用120替换所有缺失值: \n',df.fillna(120))
print('使用120、60分别替代换销量、库存列的缺失值: \n',df.fillna({'销量(kg)':120, '库存(kg)':60}))
print('删除少于3个非缺失值的行: \n',df.dropna(thresh=3))
print('删除库存包含缺失值的行: \n',df.dropna(subset=['库存(kg)']))


